#include<iostream>
#include"Stack.h"
#include"Queue.h"
#include"Priority_queue.h"
#include<list>


using namespace hcc;

void test1()
{
	stack<int, std::list<int>> st;
	st.push(1);
	st.push(2);
	st.push(3);
	st.push(4);
	st.push(5);

	while (!st.empty())
	{
		std::cout << st.top() << " ";
		st.pop();
	}
	std::cout << "\n";
}
void test2()
{
	Queue<int>q;
	q.push(1);
	q.push(2);
	q.push(3);
	q.push(4);
	q.push(5);
	while (!q.empty())
	{
		std::cout << q.front() << " ";
		q.pop();
	}
	std::cout << " \n";
}
void test3()
{
	priority_queue<int>pq;
	pq.push(1);
	pq.push(9);
	pq.push(5);
	pq.push(8);
	pq.push(3);

	while (!pq.empty())
	{
		std::cout << pq.top() << " ";
		pq.pop();
	}
	std::cout << " ";
}
void test4()
{
	std::vector<int>vt = { 1,5,4,3,9,7,8,10,4,7,2 };
	priority_queue<int>pq(vt.begin(), vt.end());

	while (!pq.empty())
	{
		std::cout << pq.top() << " ";
		pq.pop();

	}
	std::cout << " \n";
}
int main()
{
	test4();
	return 0;
}